home *** CD-ROM | disk | FTP | other *** search
-
-
-
- GGGGRRRREEEEPPPP((((1111)))) GGGGNNNNUUUU PPPPrrrroooojjjjeeeecccctttt ((((1111999988888888 DDDDeeeecccceeeemmmmbbbbeeeerrrr 11113333)))) GGGGRRRREEEEPPPP((((1111))))
-
-
-
- NNNNAAAAMMMMEEEE
- grep, egrep - print lines matching a regular expression
-
- SSSSYYYYNNNNOOOOPPPPSSSSIIIISSSS
- ggggrrrreeeepppp [ ----CCCCVVVVbbbbcccchhhhiiiillllnnnnssssvvvvwwwwxxxx ] [ ----_n_u_m ] [ ----AAAABBBB _n_u_m ] [ [ ----eeee ] _e_x_p_r |
- ----ffff _f_i_l_e ] [ _f_i_l_e_s ... ]
-
- DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN
- _G_r_e_p searches the files listed in the arguments (or standard
- input if no files are given) for all lines that contain a
- match for the given _e_x_p_r. If any lines match, they are
- printed.
-
- Also, if any matches were found, _g_r_e_p will exit with a
- status of 0, but if no matches were found it will exit with
- a status of 1. This is useful for building shell scripts
- that use _g_r_e_p as a condition for, for example, the _i_f
- statement.
-
- When invoked as _e_g_r_e_p the syntax of the _e_x_p_r is slightly
- different; See below.
-
- RRRREEEEGGGGUUUULLLLAAAARRRR EEEEXXXXPPPPRRRREEEESSSSSSSSIIIIOOOONNNNSSSS
- (grep) (egrep) (explanation)
-
- _c _c a single (non-meta) character
- matches itself.
-
- . . matches any single character except
- newline.
-
- \? ? postfix operator; preceeding item
- is optional.
-
- * * postfix operator; preceeding item 0
- or more times.
-
- \+ + postfix operator; preceeding item 1
- or more times.
-
- \| | infix operator; matches either
- argument.
-
- ^ ^ matches the empty string at the
- beginning of a line.
-
- $ $ matches the empty string at the end
- of a line.
-
- \< \< matches the empty string at the
- beginning of a word.
-
-
-
-
- Page 1 (printed 3/9/94)
-
-
-
-
-
-
- GGGGRRRREEEEPPPP((((1111)))) GGGGNNNNUUUU PPPPrrrroooojjjjeeeecccctttt ((((1111999988888888 DDDDeeeecccceeeemmmmbbbbeeeerrrr 11113333)))) GGGGRRRREEEEPPPP((((1111))))
-
-
-
- \> \> matches the empty string at the end
- of a word.
-
- [_c_h_a_r_s] [_c_h_a_r_s] match any character in the given
- class; if the first character after
- [ is ^, match any character not in
- the given class; a range of
- characters may be specified by
- _f_i_r_s_t-_l_a_s_t; for example, \W (below)
- is equivalent to the class
- [^A-Za-z0-9]
-
- \( \) ( ) parentheses are used to override
- operator precedence.
-
- \_d_i_g_i_t \_d_i_g_i_t \_n matches a repeat of the text
- matched earlier in the regexp by
- the subexpression inside the nth
- opening parenthesis.
-
- \ \ any special character may be
- preceded by a backslash to match it
- literally.
-
- (the following are for compatibility with GNU Emacs)
-
- \b \b matches the empty string at the
- edge of a word.
-
- \B \B matches the empty string if not at
- the edge of a word.
-
- \w \w matches word-constituent characters
- (letters & digits).
-
- \W \W matches characters that are not
- word-constituent.
-
- Operator precedence is (highest to lowest) ?, *, and +,
- concatenation, and finally |. All other constructs are
- syntactically identical to normal characters. For the truly
- interested, the file dfa.c describes (and implements) the
- exact grammar understood by the parser.
-
- OOOOPPPPTTTTIIIIOOOONNNNSSSS
- ----AAAA _n_u_m
- print <num> lines of context after every matching line
-
- ----BBBB _n_u_m
- print _n_u_m lines of context before every matching line
-
- ----CCCC print 2 lines of context on each side of every match
-
-
-
- Page 2 (printed 3/9/94)
-
-
-
-
-
-
- GGGGRRRREEEEPPPP((((1111)))) GGGGNNNNUUUU PPPPrrrroooojjjjeeeecccctttt ((((1111999988888888 DDDDeeeecccceeeemmmmbbbbeeeerrrr 11113333)))) GGGGRRRREEEEPPPP((((1111))))
-
-
-
- ----_n_u_m print _n_u_m lines of context on each side of every match
-
- ----VVVV print the version number on the diagnostic output
-
- ----bbbb print every match preceded by its byte offset
-
- ----cccc print a total count of matching lines only
-
- ----eeee _e_x_p_r
- search for _e_x_p_r; useful if _e_x_p_r begins with -
-
- ----ffff _f_i_l_e
- search for the expression contained in _f_i_l_e
-
- ----hhhh don't display filenames on matches
-
- ----iiii ignore case difference when comparing strings
-
- ----llll list files containing matches only
-
- ----nnnn print each match preceded by its line number
-
- ----ssss run silently producing no output except error messages
-
- ----vvvv print only lines that contain no matches for the <expr>
-
- ----wwww print only lines where the match is a complete word
-
- ----xxxx print only lines where the match is a whole line
-
- SSSSEEEEEEEE AAAALLLLSSSSOOOO
- emacs(1), ed(1), sh(1), _G_N_U _E_m_a_c_s _M_a_n_u_a_l
-
- IIIINNNNCCCCOOOOMMMMPPPPAAAATTTTIIIIBBBBIIIILLLLIIIITTTTIIIIEEEESSSS
- The following incompatibilities with UNIX _g_r_e_p exist:
-
- The context-dependent meaning of * is not quite the
- same (grep only).
-
- ----bbbb prints a byte offset instead of a block offset.
-
- The {_m,_n} construct of System V grep is not
- implemented.
-
- BBBBUUUUGGGGSSSS
- GNU _e?_g_r_e_p has been thoroughly debugged and tested by
- several people over a period of several months; we think
- it's a reliable beast or we wouldn't distribute it. If by
- some fluke of the universe you discover a bug, send a
- detailed description (including options, regular
- expressions, and a copy of an input file that can reproduce
- it) to me, mike@wheaties.ai.mit.edu.
-
-
-
- Page 3 (printed 3/9/94)
-
-
-
-
-
-
- GGGGRRRREEEEPPPP((((1111)))) GGGGNNNNUUUU PPPPrrrroooojjjjeeeecccctttt ((((1111999988888888 DDDDeeeecccceeeemmmmbbbbeeeerrrr 11113333)))) GGGGRRRREEEEPPPP((((1111))))
-
-
-
- There is also a newsgroup, gnu.utils.bug, for reporting FSF
- utility programs' bugs and fixes; but before reporting
- something as a bug, please try to be sure that it really is
- a bug, not a misunderstanding or a deliberate feature.
- Also, include the version number of the utility program you
- are running in _e_v_e_r_y bug report that you send in. Please do
- not send anything but bug reports to this newsgroup.
-
- AAAAVVVVAAAAIIIILLLLAAAABBBBIIIILLLLIIIITTTTYYYY
- GNU _g_r_e_p is free; anyone may redistribute copies of _g_r_e_p to
- anyone under the terms stated in the GNU General Public
- License, a copy of which may be found in each copy of _G_N_U
- _E_m_a_c_s. See also the comment at the beginning of the source
- code file grep.c.
-
- Copies of GNU _g_r_e_p may sometimes be received packaged with
- distributions of Unix systems, but it is never included in
- the scope of any license covering those systems. Such
- inclusion violates the terms on which distribution is
- permitted. In fact, the primary purpose of the General
- Public License is to prohibit anyone from attaching any
- other restrictions to redistribution of any of the Free
- Software Foundation programs.
-
- AAAAUUUUTTTTHHHHOOOORRRRSSSS
- Mike Haertel wrote the deterministic regexp code and the
- bulk of the program.
-
- James A. Woods is responsible for the hybridized search
- strategy of using Boyer-Moore-Gosper fixed-string search as
- a filter before calling the general regexp matcher.
-
- Arthur David Olson contributed code that finds fixed strings
- for the aforementioned BMG search for a large class of
- regexps.
-
- Richard Stallman wrote the backtracking regexp matcher that
- is used for \_d_i_g_i_t backreferences, as well as the getopt
- that is provided for 4.2BSD sites. The backtracking matcher
- was originally written for GNU Emacs.
-
- D. A. Gwyn wrote the C alloca emulation that is provided so
- System V machines can run this program. (Alloca is used
- only by RMS' backtracking matcher, and then only rarely, so
- there is no loss if your machine doesn't have a "real"
- alloca.)
-
- Scott Anderson and Henry Spencer designed the regression
- tests used in the "regress" script.
-
- Paul Placeway wrote the original version of this manual
- page.
-
-
-
- Page 4 (printed 3/9/94)
-
-
-
-